#include <iostream>
#include <array>
#include <ctime>
using namespace std;

//指针
void zhizhen(){
    //1.定义指针  nullpointexception
    int a = 10;
    //定义指针的语法：数据类型 * 指针变量名
    // int * point;
    //让指针记录变量a的地址
    int* point = &a;
    cout<<"a的地址为："<<&a<<endl;
    cout<<"指针point为："<<point<<endl;

    //2.使用指针
    //可以通过引用的方式来找到指针指向的内存;
    //指针前加*代表解引用，找到指针指向内存中的数据l
    *point = 10000;
    cout<<a<<endl;

    //3.空指针，用于给变量初始化
    int *p = NULL;

    //空指针是用户不可访问的，内存编号0-255是被系统占用的
    // *p = 100;
    // cout<<*p<<endl;//报错信息： (interrupted by signal 11:SIGSEGV)

    /**
     *4.野指针（下标越界）
     *指针变量指向非法的内存空间；
     */
    int * s = (int *)0x1100;

    cout<<*s<<endl;

}



